import request from '@/utils/request';

/**
 * 获取顾客端公告列表（首页显示）
 * @returns {Promise} - 包含公告列表的Promise对象
 */
export function getNoticeList() {
  return request({
    url: '/notice/list',
    method: 'GET'
  });
}

/**
 * 分页查询公告列表
 * @param {Object} params - 查询参数
 * @param {Number} params.pageNo - 页码
 * @param {Number} params.pageSize - 每页大小
 * @param {String} params.title - 公告标题（可选）
 * @param {Number} params.targetType - 目标类型（可选）
 * @param {Number} params.priority - 优先级（可选）
 * @param {Number} params.status - 状态（可选）
 * @param {Number} params.isTop - 是否置顶（可选）
 * @returns {Promise} - 包含公告分页数据的Promise对象
 */
export function getNoticeListPage(params) {
  return request({
    url: '/notice/page',
    method: 'POST',
    data: params
  });
}

/**
 * 根据ID获取公告详情
 * @param {Number} id - 公告ID
 * @returns {Promise} - 包含公告详情的Promise对象
 */
export function getNoticeById(id) {
  return request({
    url: `/notice/${id}`,
    method: 'GET'
  });
}

/**
 * 增加公告查看次数
 * @param {Number} id - 公告ID
 * @returns {Promise} - 包含操作结果的Promise对象
 */
export function incrementNoticeViewCount(id) {
  return request({
    url: `/notice/${id}/view`,
    method: 'POST'
  });
}